package com.dashboard.domain;

/**
 * Meses de um ano.
 * 
 * @author jneves
 *
 */
public enum MesEnum
{
	JANEIRO(1),
	FEVEREIRO(2),
	MARCO(3),
	ABRIL(4),
	MAIO(5),
	JUNHO(6),
	JULHO(7),
	AGOSTO(8),
	SETEMBRO(9),
	OUTUBRO(10),
	NOVEMBRO(11),
	DEZEMBRO(12);

	/**
	 * O valor num&eacute;rico do m&ecirc;s.
	 */
	long valor;
	
	/**
	 * Construtor da enumera&ccedil;&atilde;o que recebe como par&acirc;metro um n&uacute;mero inteiro
	 * representando o valor do m&ecirc;s.
	 * 
	 * @param valor - O valor num&eacute;rico do m&ecirc;s.
	 */
	MesEnum(long valor)
	{
		this.valor = valor;
	}
	
	/**
	 * Retorna o valor num&eacute;rico do m&ecirc;s.
	 *  
	 * @return O valor num&eacute;rico do m&ecirc;s.
	 */
	public long getValor()
	{
		return this.valor;
	}
	
	/**
	 * Retorna o MesEnum correspondente ao valor.
	 * 
	 * @param valor - O valor num&eacute;rico do m&ecirc;s.
	 * @return O MesEnum correspondente ao valor.
	 */
	public static MesEnum converterValorParaGrau(long valor)
	{
		return MesEnum.values()[(int) (valor)];
	}
}
